The present invention is related to the transfer of data in an environment using Operating System (OS) stacks wherein the data transfer is between LAN devices or clients and the OS stack via an adapter wherein each OS stack has a unique identifier, as is more particularly related to an apparatus and method for assigning a unique identifier to each OS stack such that the OS stacks may be shared by an adapter.
Operating System (OS) stacks are established to enable Input/Output (I/O) transfer of data by Logical Partitions (LPARs) established in the host of a data processing system. When data is received from or sent to a Local Area Network (LAN), the data is transmitted through an adapter which is connected between the host and the LAN. Typically, every adapter must have a unique Media Access Control (MAC) address per OS stack attached to it. In Operating Systems, such as the z/OS operating system available from IBM, thousands of LPARs may exist at one time, with each LPAR possibly having one or more OS stacks. However, it is not feasible to provide an adapter for each of these OS stacks. Thus, it is necessary to find a way to assign a plurality of OS stacks to a single adapter. However the addressing scheme of the present Internet Protocol version 4 (IPv4) has a limited number of available addresses which may be assigned.
Internet Protocol Version 6 (IPv6) is the next generation protocol designed by the Internet Engineering Task Force to replace the current version IPv4. Most of today's internet uses IPv4, which is now nearly twenty years old. IPv4 has been remarkably resilient in spite of its age, but it is beginning to have problems. Most importantly, there is a growing shortage of IPv4 addresses, which are needed by all new machines added to the Internet.
IPv6 fixes a number of problems in IPv4, such as the limited number of available IPv4 addresses. It also adds many improvements to IPv4 in areas such as routing, network autoconfiguration, expanded addressing capabilities, header format simplification, improved support for extensions and options, flow labeling capability, and consolidated authentication and privacy capabilities.
The merits of IPv6 can be summarized as follows:                scalability: IPv6 uses 128 bit address space. Address length is 4 times longer than IPv4.        security: IPv6 basic specification includes security. It includes packet encryption (ESP:Encapslated Security Payload) and source authentication (AH:Authentication Header).        real-time: To support real-time traffic such as video conference, IPv6 has “Flow Label”. Using flow label, router can know which end-to-end flow a packet belongs to, and then find out the packet which belongs to real-time traffic.        autoconfiguration: IPv6 basic specification includes address autoconfiguration. So, even novice users can connect their machines to network.        specification optimization: IPv6 succeeds good parts and discards old and useless parts of IPv4.        
IPv4 addresses are grouped into 5 classes. Class A, B, and C, addresses support unicast communication. Class D addresses support IP multicasting. Class E addresses are experimental. IPv4 addresses are 32 bit in length and follow the convention provided in the Table 1.
TABLE 1ClassRangeTypeA0.0.0.0 tounicastB127.255.255.255C128.0.0.0 to191.255.255.255192.0.0.0 to223.255.255.255D224.0.0.0 tomulticast239.255.255.255E240.0.0.0 toexperimental247.255.255.255
IPv6 addresses are 128 bits in length and have the format shown in Table 2 for a unicast address.
TABLE 23 bits13 bits8 bits24 bits16 bits64 bitsFPTLA IDResNLA IDSLA IDInterface ID<-- Public Topology------------->Site<-------->Topology<---Interface Identifier-->Where
FPFormat Prefix (001)TLA IDTop-Level Aggregation IdentifierRESReserved for future useNLA IDNext-Level Aggregation IdentifierSLA IDSite-Level Aggregation IdentifierINTERFACE IDInterface Identifier